﻿// --------------------------------------------------------------------------------------------------------------------
// <copyright file="StandardCommandDefinitions.cs" company="">
//   
// </copyright>
// <summary>
//   The standard command definitions.
// </summary>
// --------------------------------------------------------------------------------------------------------------------

namespace Libium.UseCases
{
    using System;

    /// <summary>
    ///   The standard command definitions.
    /// </summary>
    public static class StandardCommandDefinitions
    {
        #region Static Fields

        /// <summary>
        ///   The abort command.
        /// </summary>
        public static CommandDefinition AbortCommand =
            new CommandDefinition(new Guid("{927C788F-F5B5-4462-B19B-84F036833F7E}"), "Abort", "Abort", false);

        /// <summary>
        ///   The cancel command.
        /// </summary>
        public static CommandDefinition CancelCommand =
            new CommandDefinition(new Guid("{B86CD701-40B3-409A-BC25-D5292649AD78}"), "Cancel", "Cancel", false);

        /// <summary>
        ///   The clear command.
        /// </summary>
        public static CommandDefinition ClearCommand =
            new CommandDefinition(new Guid("{62093751-AB94-42B9-92B5-7EEF9F2075BD}"), "Clear", "Clear");

        /// <summary>
        ///   The copy command.
        /// </summary>
        public static CommandDefinition CopyCommand =
            new CommandDefinition(new Guid("{9CC559FA-4EED-4725-9F73-6C1E1589A82C}"), "Copy", "Copy", false);

        /// <summary>
        ///   The cut command.
        /// </summary>
        public static CommandDefinition CutCommand =
            new CommandDefinition(new Guid("{31636B09-0DA7-4CD8-9C4D-CCCB71D7890A}"), "Cut", "Cut");

        /// <summary>
        ///   The delete command.
        /// </summary>
        public static CommandDefinition DeleteCommand =
            new CommandDefinition(new Guid("{A9C185D1-A503-4122-AD1E-B8723BF84F4C}"), "Delete", "Delete");

        /// <summary>
        ///   The ignore command.
        /// </summary>
        public static CommandDefinition IgnoreCommand =
            new CommandDefinition(new Guid("{5ECDEC26-CB0C-4D86-8C0B-D105B26E3ED5}"), "Ignore", "Ignore", false);

        /// <summary>
        ///   The load command.
        /// </summary>
        public static CommandDefinition LoadCommand =
            new CommandDefinition(new Guid("{00005FCC-9F20-4C8B-9C6C-9B1ADFD6657A}"), "Load", "Load");

        /// <summary>
        ///   The no command.
        /// </summary>
        public static CommandDefinition NoCommand =
            new CommandDefinition(new Guid("{B41CF8DE-5997-4934-98E7-BB2D4C1161B2}"), "No", "No", false);

        /// <summary>
        ///   The ok command.
        /// </summary>
        public static CommandDefinition OkCommand =
            new CommandDefinition(new Guid("{5D1949F3-7AE9-46DD-8BE3-465A9FA11C6E}"), "Ok", "Ok", false);

        /// <summary>
        ///   The open command.
        /// </summary>
        public static CommandDefinition OpenCommand =
            new CommandDefinition(new Guid("{94742152-B0E2-445D-B9B3-0A387418E80A}"), "Open", "Open");

        /// <summary>
        ///   The open command.
        /// </summary>
        public static CommandDefinition BrowseCommand =
            new CommandDefinition(new Guid("{03C21894-F0C9-40E1-A833-102DB1EB602A}"), "Browse", "Browse");

        /// <summary>
        ///   The open command.
        /// </summary>
        public static CommandDefinition EditCommand =
            new CommandDefinition(new Guid("{297DC304-BE73-4D1D-936C-7657F4F3A439}"), "Edit", "Edit");

        /// <summary>
        ///   The paste command.
        /// </summary>
        public static CommandDefinition PasteCommand =
            new CommandDefinition(new Guid("{7647C1AE-6EF3-482A-9060-2C07DDA8BC4B}"), "Paste", "Paste");

        /// <summary>
        ///   The redo command.
        /// </summary>
        public static CommandDefinition RedoCommand =
            new CommandDefinition(new Guid("{6FA94635-309D-4F81-B13A-91304F7CD3B7}"), "Redo", "Redo", false);

        /// <summary>
        ///   The refresh command.
        /// </summary>
        public static CommandDefinition RefreshCommand =
            new CommandDefinition(new Guid("{8FE72557-DAC0-4286-B45B-C6ABD3175B46}"), "Refresh", "Refresh");

        /// <summary>
        ///   The retry command.
        /// </summary>
        public static CommandDefinition RetryCommand =
            new CommandDefinition(new Guid("{D11B1559-7C7E-4D50-98B9-4001B176189C}"), "Retry", "Retry", false);

        /// <summary>
        ///   The save all command.
        /// </summary>
        public static CommandDefinition SaveAllCommand =
            new CommandDefinition(new Guid("{7955D269-F663-4777-B3D5-1AA02ACC9632}"), "Save all", "Save all", false);

        /// <summary>
        ///   The save as command.
        /// </summary>
        public static CommandDefinition SaveAsCommand =
            new CommandDefinition(new Guid("{D27C5631-1253-461C-AEAA-97E1062F6682}"), "Save as", "Save as", false);

        /// <summary>
        ///   The save command.
        /// </summary>
        public static CommandDefinition SaveCommand =
            new CommandDefinition(new Guid("{BF8F852D-AE57-4440-A630-506BFE371DEB}"), "Save", "Save", false);

        /// <summary>
        ///   The undo command.
        /// </summary>
        public static CommandDefinition UndoCommand =
            new CommandDefinition(new Guid("{6CF1BA8B-DBE5-40DB-9129-6A95E9DE6C8F}"), "Undo", "Undo", false);

        /// <summary>
        ///   The yes command.
        /// </summary>
        public static CommandDefinition YesCommand =
            new CommandDefinition(new Guid("{C65A584F-E8BD-446D-963E-D79D32663DB4}"), "Yes", "Yes", false);

        #endregion

        // TODO Remove isModifing??? Replace with modify knowledge in use case
    }
}